<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    // es2017标准引入了async函数，使得异步操作变得更加方便
    // async函数是什么？ 一句话，它就是Generator函数的语法糖
    /**
     * 一比较就会发现，async函数就是将Generator函数的*号替换成async,
     * 将yeild替换成await，仅此而已
     *
     * async函数的await命令后面，可以是 Promise 对象和原始类型的值（数值、字符串和布尔值，但这时会自动转成立即 resolved 的 Promise 对象）。
     *
     * async函数的返回值是 Promise 对象，这比 Generator 函数的返回值是 Iterator 对象方便多了。你可以用then方法指定下一步的操作。
     *
     * 进一步说，async函数完全可以看作多个异步操作，包装成的一个 Promise 对象，而await命令就是内部then命令的语法糖。
    */
  </script>
</body>
</html>